﻿using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;

namespace FastShell.Common.Model
{
    public abstract class Authentication
    {
        internal Authentication()
        { }
    }

    public sealed class PasswordAuthentication : Authentication
    {
        public string Password
        { get; set; }

        public PasswordAuthentication(string password)
        {
            Password = password;
        }
    }

    public sealed class KeyAuthentication : Authentication
    {
        public Stream Key
        { get; set; }

        public string Passphrase
        { get; set; }

        public KeyAuthentication(Stream key, string passphrase)
        {
            Key = key;
            Passphrase = passphrase;
        }
    }
}
